import { createRequest } from 'microvideo-request'

/**
 *
 * 交通态势
 */

export default {
  /**
   * 获取交通态势畅通率
   *
   * @obj     object
   * @param   province    string  必填	省份标识
   * @param   city	    string  选填	城市标识
   * @param   roadType    string  必填	路网类型（0:公路;1:高速;2:全路网）
   * @returns promise
   */
  getTrafficStatistic(obj) {
    return createRequest().setParameters(obj).get('/traffic-situation/unimpeded')
  },

  /**
   * 获取拥堵路段列表
   *
   * @obj     object
   * @param   province    string  必填	省份标识
   * @param   city	    string  选填	城市标识
   * @param  roadType    string  必填	路网类型（0:公路;1:高速;2:全路网）
   *
   * @returns promise
   */
  getTrafficSituationList(obj) {
    return createRequest().setParameters(obj).get('/traffic-situation/jam/road')
  },

  /**
   * 获取预测预警列表
   * @obj      object
   * @param   province      string  必填	省份标识
   * @param   city	       string  选填	城市标识
   * @param   roadType      string  必填	路网类型（0:公路;1:高速;2:全路网）
   * @param  forecastType  string  选填 预测分类（1：15m;2:30m;3:60m;4:120m）
   * @returns  promise
   */
  getTrafficForecastList(obj) {
    return createRequest().setParameters(obj).get('/traffic-situation/jam/forecast')
  },

  /**
   * 获取拥堵程度
   * @obj     object
   * @param   province    string  必填	省份标识
   * @param   city	    string  选填	城市标识
   * @param   roadType    string  必填	路网类型（0:公路;1:高速;2:全路网）
   *
   * @returns promise
   */
  getDriveCrosstalk(obj) {
    return createRequest('BASE_SERVER').setParameters(obj).get('/traffic-situation/crosstalk')
  },
  /**
   * 断面流量  【参数暂定】
   * @params obj
   * @param startStake  开始桩号
   * @param endStake    结束桩号
   * @param roadNum     路段编号
   * @param timeType    统计时间维度类型(1:分钟;2:小时;3:天;4:月;5:年)
   */
  getSectionFlow(obj) {
    return createRequest().setParameters(obj).get('/situation-flow/section/flow')
  },
  /**
   * 断面车速
   * roadCode  query string 是 示例值：S87说明：道路编码，如：S87
   * roadType  query string 是 示例值：1说明：道路类型，普通公路：2，高速公路：1
   * eventTime query string 是 示例值：202212141141说明：事件时间，格式：yyyyMMddHHmm 例如：202207071028.
   * upAndDown query string 是 示例值：1说明：行驶方向
   */
  getSpeedFlow(obj) {
    return createRequest().setParameters(obj).get('/situation-speed/section/speed')
  },

  /**
   * 获取拥挤预测断面车速,断面流量
   * @params obj
   * @param gczbs   观察站标志
   * @param xsfx    行驶方向
   * ***/
  getForecastSpeedFlow(obj) {
    return createRequest().setParameters(obj).get('/traffic-situation/forecast/detail')
  },

  /**
   * 获取 观测站详情 不含小时数据
   * @params obj
   * @param gczbs   观察站标志
   * @param xsfx    行驶方向
   * ***/
  getJddDetail(obj) {
    return createRequest().setParameters(obj).get('/traffic-situation/gcz-flow/detail')
  }
}
